package SingletonPattern;

/**
 * 4.懒汉式(线程安全，同步方法)实现单例模式（2）
 */
public class LazySingleton2 {
    private static LazySingleton2 lazySingleton2;

    //1.私有化构造函数
    private LazySingleton2() {
    }

    //对外暴露获取实例的方法
    //外面需要使用该实例时（即调用getInstance()）,才创建实例
    public static synchronized LazySingleton2 getInstance() {
        if (lazySingleton2 == null) {
            //没有才创建
            lazySingleton2 = new LazySingleton2();
        }
        return lazySingleton2;
    }
}
